﻿using System;
// 将结构体转换成接口会引发装箱机制。调用结构体的隐式实现接口成员不会引发装箱。
namespace _056_接口和装箱
{
    interface I { void Foo(); }
    struct S : I { public void Foo() { } }

    class Program
    {
        static void Main(string[] args)
        {
            S s = new S();
            s.Foo(); // 没有装箱

            I i = s; // 当转换为接口时引发装箱
            i.Foo();
        }
    }
}
